// 实例化编辑器 http://kindeditor.net/docs/option.html -->
var editor = null;
KindEditor.ready(function (K) {
    editor = K.create('#upd_c_name', {
        width:'800px',
        height:'400px',
        resizeType:0,
        items: [
            'source',       //HTML代码
            'preview',          //预览
            'formatblock',   //	段落
            'fontname',   //	字体
            'fontsize',   //	文字大小
            'forecolor',   //	文字颜色
            'bold',   //	粗体
            'image',   //	图片
            'table',   //	表格
            'clearhtml',   //	清理HTML代码
        ],
        'uploadJson' : '/content/upload',
        'filePostName': 'imgFile',// name属性默认值
        'allowImageRemote' : false,   //true时显示网络图片标签，false时不显示。
        'fillDescAfterUploadImage' : false,
        'filterMode' : true,
        'htmlTags' : {
            font : ['color', 'size', 'face', '.background-color'],
            span : [
                '.color', '.background-color', '.font-size', '.font-family', '.background',
                '.font-weight', '.font-style', '.text-decoration', '.vertical-align', '.line-height'
            ],
            div : [
                'align', '.border', '.margin', '.padding', '.text-align', '.color',
                '.background-color', '.font-size', '.font-family', '.font-weight', '.background',
                '.font-style', '.text-decoration', '.vertical-align', '.margin-left'
            ],
            table: [
                'border', 'cellspacing', 'cellpadding', 'width', 'height', 'align', 'bordercolor',
                '.padding', '.margin', '.border', 'bgcolor', '.text-align', '.color', '.background-color',
                '.font-size', '.font-family', '.font-weight', '.font-style', '.text-decoration', '.background',
                '.width', '.height', '.border-collapse'
            ],
            'td,th': [
                'align', 'valign', 'width', 'height', 'colspan', 'rowspan', 'bgcolor',
                '.text-align', '.color', '.background-color', '.font-size', '.font-family', '.font-weight',
                '.font-style', '.text-decoration', '.vertical-align', '.background', '.border'
            ],
            a : ['href', 'target', 'name'],
            embed : ['src', 'width', 'height', 'type', 'loop', 'autostart', 'quality', '.width', '.height', 'align', 'allowscriptaccess'],
            img : ['src', 'width', 'height', 'border', 'alt', 'title', 'align', '.width', '.height', '.border'],
            'p,ol,ul,li,blockquote,h1,h2,h3,h4,h5,h6' : [
                'align', '.text-align', '.color', '.background-color', '.font-size', '.font-family', '.background',
                '.font-weight', '.font-style', '.text-decoration', '.vertical-align', '.text-indent', '.margin-left'
            ],
            pre : ['class'],
            hr : ['class', '.page-break-after'],
            'br,tbody,tr,strong,b,sub,sup,em,i,u,strike,s,del' : []
        }
    });
});



$("#tagSearchDiv").on('click', '.tagSpan', function () {

    var size = $(this).css('border-width');
    if(size === '0px') {
        $(this).css('border-width', '3px');
        $(this).attr('isSelect', 'true');
    } else {
        $(this).css('border-width', '0px');
        $(this).attr('isSelect', 'false');
    }
});


$("#catagoryDiv").on('click', '.oneCategoryText', function () {
    $(this).siblings('.oneCategoryText').css('border', '0px black solid')
    $(this).siblings('.oneCategoryText').attr('isSelect', 'false');

    $(this).css('border', '3px black solid');
    $(this).attr('isSelect', 'true');

    loadTwoCategory();
});

$("#catagoryDiv").on('dblclick', '.twoCategoryText', function () {
    var c_id = $(this).attr('c_id');
    if($('.selectCategoryText[c_id="'+c_id+'"]').length > 0) {
        return;
    }

    var clone = $(this).clone().removeClass('twoCategoryText').addClass('selectCategoryText');
    var name = $('.oneCategoryText[isSelect="true"]').attr('c_name')  + '>' + $(clone).attr('c_name')
    $(clone).text(name);
    $('.selectCategoryDiv').append(clone);
});

$("#catagoryDiv").on('click', '.selectCategoryText', function () {
    var size = $(this).css('border-width');
    if(size === '0px') {
        $(this).css('border-width', '3px');
        $(this).attr('isSelect', 'true');
    } else {
        $(this).css('border-width', '0px');
        $(this).attr('isSelect', 'false');
    }
});

$("#catagoryDiv").on('click', '.contentCategorySpan', function () {
    var c_id = $(this).attr('c_id');
    var c_name = $(this).attr('c_name');

    if($('.selectCategoryText[c_id="'+c_id+'"]').length > 0) {
        return;
    }

    $('.selectCategoryDiv').append('<span class="selectCategoryText" c_id="'+c_id+'">'+c_name+'</span>');
});

function loadOneCategory() {
    $.ajax({
        url :  '/category/all/one',
        type : 'post',
        async : false,
        dataType: 'json',
        success : function(data) {
            if(!data.list) {
                return;
            }

            $('.oneCategoryDiv').html('');
            for (let i = 0; i < data.list.length; i++) {
                var item = data.list[i];
                $('.oneCategoryDiv').append(
                    ' <span class="oneCategoryText" c_name="'+item.c_name+'"  c_id="'+item.c_id+'">' +
                    item.c_name + '_' + item.c_id +
                    '</span>');
            }

            $('.oneCategoryDiv .oneCategoryText').eq(0).click();
        }
    });
}
loadOneCategory();

function loadTwoCategory() {
    $.ajax({
        url :  '/category/all/two?pId='+( $('span[isSelect="true"]').attr('c_id')),
        type : 'post',
        async : false,
        dataType: 'json',
        success : function(data) {
            if(!data.list) {
                return;
            }

            $('.twoCategoryDiv').html('');
            for (let i = 0; i < data.list.length; i++) {
                var item = data.list[i];
                $('.twoCategoryDiv').append(
                    ' <span class="twoCategoryText" c_name="'+item.c_name+'" c_id="'+item.c_id+'">' +
                    item.c_name + '_' + item.c_id +
                    '</span>');
            }
        }
    });
}

function searchTag( ) {
    $.ajax({
        url :  '/tag/list?tName=' + $('#searchTagName').val(),
        type : 'post',
        async : false,
        dataType: 'json',
        success : function(data) {
            if(!data) {
                return;
            }

            $('#tagSearchDiv').html('');
            for (let i = 0; i < data.length; i++) {
                var item = data[i];
                $('#tagSearchDiv').append(
                    '<span class="tagSpan" tId="' + item.t_id + '">' + item.t_name + '</span>'
                );
            }
        }
    });
}



function addContent() {
    var selectList = $('.selectCategoryText');
    if(selectList.length == 0){
        alert('内容至少在一个二级标题下');
        return;
    }

    var categoryList = [];
    for (let i = 0; i < selectList.length; i++) {
        categoryList[categoryList.length] = selectList.eq(i).attr('c_id');
    }

    var tagList = [];
    selectList = $('.tagSpan[isSelect="true"]');
    if(selectList.length > 0) {
        for (let i = 0; i < selectList.length; i++) {
            tagList[tagList.length] = selectList.eq(i).attr('tid');
        }
    }

    var param = {
        'c_name' : $('#add_c_name').val(),
        'c_desc' : $('#add_c_desc').val(),
        'tagList' : tagList,
        'categoryList' : categoryList,
    }

    $.ajax({
        url :  '/content/insert' ,
        async : false,
        data : JSON.stringify(param),
        type : 'post',
        contentType : "application/json",//注意编码格式
        success : function(data) {
            alert(data);
            $('.selectCategoryDiv').html('');
            $('.tagSpan[isSelect="true"]').click();
            $('#add_c_name').val('');
            $('#add_c_desc').val('');
        }
    });
}


function updContent() {
    var flag = confirm('是否修改');
    if(!flag) {
        return;
    }

    var param = {
        'c_id' : $('#upd_c_id').val(),
        'c_name' : editor.html(),
        'c_desc' : $('#upd_c_desc').val(),
        'tagList' : $('#upd_tag').val().split(','),
        'categoryList' : $('#upd_category').val().split(',')
    }

    $.ajax({
        url :  '/content/update' ,
        async : false,
        data : JSON.stringify(param),
        type : 'post',
        contentType : "application/json",//注意编码格式
        success : function(data) {
            alert(data);
        }
    });
}

function delContent() {
    var flag = confirm('是否删除');
    if(!flag) {
        return;
    }

    $.ajax({
        url :  '/content/del?cId=' + $('#del_c_id').val() ,
        async : false,
        dataType: 'json',
        success : function(data) {
            alert(data);
            $('#del_c_id').val('');
        }
    });
}



function loadContent(){
    $.ajax({
        url :  '/content/one?cId=' + $('#upd_c_id').val() ,
        async : false,
        dataType: 'json',
        success : function(data) {
            if(!data.c_id) {
                return;
            }

            // $('#upd_c_name').val(data.c_name);
            editor.html(data.c_name);


            $('#upd_c_desc').val(data.c_desc);
            $('#upd_category').val(data.categoryIdList.join(','));
            $('#upd_tag').val(data.tagIdList.join(','));
        }
    });
}

function importExcel() {
    var formData = new FormData();
    formData.append('file', $('#uploadFile')[0].files[0]);

    $.ajax({
        url :  '/content/import' ,
        data: formData,
        async : false,
        type: 'POST',
        processData: false,    //让ajax不要序列化data
        contentType: false,    //让ajax不要操作content-type
        dataType: 'json',
        success : function(data) {
            if(data && data.list) {
                alert(data.list.join(','));
            }
        }
    });
}




























